package main;

import infor.User;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.JobAttributes;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.util.Calendar;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.UIManager;

import login.*;

public class Home extends JFrame implements ActionListener {
	private JTextField textField;
	JMenuBar menuBar;
	JMenu mnTrangCh, mnDK, mnNV, mnTroGiup, mnGC;
	JMenuItem itemDoiMK, itemDX, itemThoat, itemDKSDT, itemCSDT, itemTTNV,
			itemLH, itemGC, itemTG, itemAbout;
	public JLabel lblUsername;
	public JLabel lblCode;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Home frame = new Home();
					frame.setVisible(true);
					frame.setSize(900, 500);
					frame.setResizable(false);
					frame.setTitle("[Chương trình quản lý đăng ký số điện thoại di động]- Home");
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Home() {
		// setBounds(100, 100, 953, 534);

		menuBar = new JMenuBar();
		setJMenuBar(menuBar);

		mnTrangCh = new JMenu("Trang chủ");
		menuBar.add(mnTrangCh);

		itemDoiMK = new JMenuItem("Đổi mật khẩu");
		mnTrangCh.add(itemDoiMK);
		itemDoiMK.addActionListener(this);

		itemDX = new JMenuItem("Đăng xuất");
		mnTrangCh.add(itemDX);
		itemDX.addActionListener(this);

		itemThoat = new JMenuItem("Thoát");
		mnTrangCh.add(itemThoat);
		itemThoat.addActionListener(this);
		// ///////////////
		mnDK = new JMenu("Đăng ký");
		menuBar.add(mnDK);

		itemDKSDT = new JMenuItem("Đăng ký số điện thoại");
		mnDK.add(itemDKSDT);
		itemDKSDT.addActionListener(this);

		itemCSDT = new JMenuItem("Các số điện thoại ");
		mnDK.add(itemCSDT);
		itemCSDT.addActionListener(this);
		// ///////////
		mnNV = new JMenu("Nhân viên");
		menuBar.add(mnNV);

		itemTTNV = new JMenuItem("Thông tin nhân viên");
		mnNV.add(itemTTNV);
		itemTTNV.addActionListener(this);

		itemLH = new JMenuItem("Liên hệ");
		mnNV.add(itemLH);
		itemLH.addActionListener(this);
		// /////////
		mnGC = new JMenu("Gói cước");
		menuBar.add(mnGC);

		itemGC = new JMenuItem("Thông tin gói cước");
		mnGC.add(itemGC);
		itemGC.addActionListener(this);
		// /////////////////////////
		mnTroGiup = new JMenu("Trợ giúp");
		menuBar.add(mnTroGiup);

		itemTG = new JMenuItem("Đăng ký số điện thoại");
		mnTroGiup.add(itemTG);
		itemTG.addActionListener(this);

		itemAbout = new JMenuItem("About");
		mnTroGiup.add(itemAbout);
		itemAbout.addActionListener(this);

		Background back = new Background("./background.jpg");
		getContentPane().add(back, BorderLayout.CENTER);
		back.setLayout(null);

		lblUsername = new JLabel();
		lblUsername.setBounds(708, 11, 123, 14);

		back.add(lblUsername);

		JLabel lblChngTrnhQun = new JLabel("CHƯƠNG TRÌNH QUẢN LÝ ");
		lblChngTrnhQun.setForeground(new Color(255, 0, 0));
		lblChngTrnhQun.setFont(new Font("Tahoma", Font.BOLD, 16));
		lblChngTrnhQun.setBounds(309, 166, 223, 31);
		back.add(lblChngTrnhQun);

		JLabel lblngKS = new JLabel("ĐĂNG KÝ SỐ ĐIỆN THOẠI DI ĐỘNG");
		lblngKS.setFont(new Font("Tahoma", Font.BOLD, 20));
		lblngKS.setBounds(230, 198, 385, 31);
		back.add(lblngKS);

		JTextArea txtrlngVitDung = new JTextArea();
		txtrlngVitDung.setFont(new Font("Arial", Font.PLAIN, 11));
		txtrlngVitDung
				.setText("1.Lương Viết Dung_2.Nguyễn Đức Tài_3.Nguyễn Thị Diễm Hường_4.Lê Trung Phát_5.Hà Hồng Lĩnh_6.Trương Thế Hùng_7.Phạm Tiến Bảo_8. Trương Đại Hà_9.Trần Minh Thuận");
		txtrlngVitDung.setBounds(0, 432, 850, 21);
		txtrlngVitDung.setOpaque(false);
		txtrlngVitDung.setEditable(false);
		back.add(txtrlngVitDung);
		final java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(
				"HH:mm:ss");

		final JLabel lblClock = new JLabel(sdf.format(new java.util.Date()));
		lblClock.setForeground(Color.GRAY);
		lblClock.setFont(new Font("Tahoma", Font.BOLD, 18));
		ActionListener al = new ActionListener() {
			public void actionPerformed(ActionEvent ae) {
				lblClock.setText(sdf.format(new java.util.Date()));
			}
		};
		new javax.swing.Timer(1000, al).start();
		lblClock.setBounds(792, 255, 93, 31);
		back.add(lblClock);

		JLabel lblWelcome = new JLabel("Welcome!,");
		lblWelcome.setBounds(634, 11, 64, 14);
		back.add(lblWelcome);

		lblCode = new JLabel("Code");
		lblCode.setBounds(774, 11, 113, 14);
		back.add(lblCode);

	}

	@Override
	public void actionPerformed(ActionEvent e) {
		if (e.getSource() == itemThoat) {
			int tb = JOptionPane.showConfirmDialog(Home.this,
					"Bạn muốn thoát?", "Thông báo", JOptionPane.YES_NO_OPTION);
			if (tb == JOptionPane.YES_OPTION)
				System.exit(0);
			else {

			}
		} else if (e.getSource() == itemTTNV) {
			try {
				LayoutNhanVien nv = new LayoutNhanVien();
				nv.setVisible(true);
				// this.setVisible(false);
				// this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
				nv.setSize(1000, 410);
				nv.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
				nv.setResizable(false);
				if (lblUsername.getText().toString().equals("Nhân viên")
						|| lblUsername.getText().toString()
								.equals("Khách hàng")) {
					nv.btnDangKy.setEnabled(false);
					nv.btnSua.setEnabled(false);
					nv.btnHuy.setEnabled(false);
				} else {
					nv.btnDangKy.setEnabled(true);
					nv.btnSua.setEnabled(true);
					nv.btnHuy.setEnabled(true);
				}

			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		} else if (e.getSource() == itemDKSDT) {
			TTKhachHang kh;
			try {
				kh = new TTKhachHang();
				kh.setVisible(true);
				// this.setVisible(false);
				// this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
				kh.setSize(1000, 410);
				kh.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
				kh.setResizable(false);
			} catch (SQLException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}

		} else if (e.getSource() == itemDX) {
			Login lg = new Login();
			lg.setVisible(true);
			this.setVisible(false);
			this.setDefaultCloseOperation(EXIT_ON_CLOSE);
			lg.setSize(300, 150);
			lg.setLocationRelativeTo(null);
		} else if (e.getSource() == itemCSDT) {
			try {
				NoPhones np = new NoPhones();
				np.setVisible(true);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}

		} else if (e.getSource() == itemDoiMK) {

			ChangePass c = new ChangePass();
			User s = new User();
			s.setCode(lblCode.getText());
			s.setUsername(lblUsername.getText());
			c.setVisible(true);
			c.setTitle("[User]: " + s.getCode());
			c.author = s.getUsername();
			c.code=s.getCode();
		}
		else if(e.getSource()==itemAbout){
			JOptionPane.showMessageDialog(this, "App manage sign in phone number\nGroup 3\nAdmin\n+841228559193");
		}
		else if(e.getSource()==itemLH){
			JOptionPane.showMessageDialog(this, "Admin:+01228559193");
		}
		else if(e.getSource()==itemGC){
			TarrPackage tarr;
			try {
				tarr = new TarrPackage();
				tarr.setVisible(true);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		}
		else if(e.getSource()==itemTG){
			JOptionPane.showMessageDialog(this, "+Đăng ký: Menu-->Đăng ký-->Đăng ký số điện thoại-->Nhấn nút Đăng ký và làm theo hướng dẫn" +
					"\n+Phản hồi: Phản hồi cho admin hay nhân viên khi có sự cố (Nhấn vào nút Phản hồi)" +
					"\n+Nhân viên hoặc Khách hàng: Phản hồi cho admin khi muốn hủy thông tin trên hệ thống");
		}
	}
}
